package ar.com.cubika.trainees.bean.transportes.vehiculos;

import ar.com.cubika.trainees.bean.transportes.actividades.Viaje;

/**
 * @author Carlos
 */
public class Camionazo extends Vehiculo {

    /**
     * Crea un nuevo Camionazo
     */
    public Camionazo(String patente) {
        super(patente);
    }

    /* (non-Javadoc)
     * @see ar.com.trainees.transportes.Vehiculo#getCargaMaxima()
     */
    public long getCargaMaxima() {
        return 20000;
    }

    /* (non-Javadoc)
     * @see ar.com.trainees.transportes.Vehiculo#getTiempo(ar.com.trainees.transportes.Viaje)
     */
    public double getTiempo(Viaje viaje) {
        double result = 
            1 + viaje.getKmBuenCamino() / 90.0 
              + viaje.getKmMalCamino() / 70.0;
        if (viaje.getCarga() > 10000) {
            result *= 1.3;
        }
        return result;
    }

    /* (non-Javadoc)
     * @see ar.com.trainees.transportes.Vehiculo#getConsumoCombustible(ar.com.trainees.transportes.Viaje)
     */
    public double getConsumoCombustible(Viaje viaje) {
        return viaje.getKm() * .3 + 
               viaje.getKm() * (viaje.getCarga() / 1000.0);
    }

}
